for (var index = 0; index < 600; index++) {
$("#div-item").append(item);
$("#div-left-hack").append(leftitem);
}
}
function ScrollHeader() {
$("#div-header").scrollLeft($("#div-item").scrollLeft());
$("#div-left-hack").scrollLeft($("#div-item").scrollLeft());
$("#div-left-hack").scrollTop($("#div-item").scrollTop());
}
//refernce - http://stackoverflow.com/questions/457262/html-what-is-the-height-of-a-horizontal-scrollbar
function getScrollSizes() {
// call after document is finished loading
var el = document.createElement('div');
el.style.display = 'hidden';
el.style.overflow = 'scroll';
document.body.appendChild(el);
var h = el.offsetHeight - el.clientHeight;
document.body.removeChild(el);
return h;
}
</script>
Click event of button to export contact to Excel or spreadsheet.
Protected Sub excelvCard_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles excelvCard.Click Try Dim stringWrite As New System.IO.StringWriter() Dim htmlWrite As New System.Web.UI.HtmlTextWriter(stringWrite) Dim ml_directoryPath As String = Server.MapPath("~/DesktopModules/Employee/ExportEmployee/") If Directory.Exists(ml_directoryPath) Then Directory.Delete(ml_directoryPath, True) End If Directory.CreateDirectory(ml_directoryPath) ExportContactsToExcel(ml_directoryPath) Response.Clear() Response.ContentType = "application/Excel" Response.AppendHeader("content-disposition", "attachment;filename=Contacts.csv") Response.TransmitFile((ml_directoryPath + "Employees.csv")) Response.Flush() Response.End() Catch ex As Exception End Try End Sub
////Function for Export contact to Excel///
Public Shared Function ExportContactsToExcel(ByVal destinationFilepath As String) As String Dim emplist As New ArrayList Dim ExportList As New List(Of Modules.Employee.EmployeeInfo) ExportList = Modules.Employee.EmployeeController.GetAllEmployeeForExport() Dim ml_filePath As String = destinationFilepath ml_filePath = (ml_filePath + "Employees.csv") Dim o_fsCsvFile As FileStream = New FileStream(ml_filePath, FileMode.Create) Dim o_swCsvFile As StreamWriter = New StreamWriter(o_fsCsvFile) o_swCsvFile.WriteLine("FirstName,LastName,DateOfBirth,Parmanent Address,Local Address,Home Phone,Cell Phone,Emer. Contact Name,Emer. Contact Relation,Emer.Contact Home Phone,Emer.Contact Cell Phone,Physically Disabled,Blood Group,Manager Name,Current Designation,Pan Number,Passport Number,Hire Date,Termination Date") Dim o_sbContact As System.Text.StringBuilder = New System.Text.StringBuilder For Each exportEmp As EmployeeInfo In ExportList o_sbContact.Append((exportEmp.Name + ",")) o_sbContact.Append((exportEmp.LastName + ",")) o_sbContact.Append((exportEmp.DateOfBirth + ",")) o_sbContact.Append((exportEmp.PermanentAddress + ",")) o_sbContact.Append((exportEmp.LocalAddress + ",")) o_sbContact.Append((exportEmp.PhoneNumber + ",")) o_sbContact.Append((exportEmp.MobileNumber + ",")) o_sbContact.Append((exportEmp.EmgContactName + ",")) o_sbContact.Append((exportEmp.Email + ",")) o_sbContact.Append((exportEmp.Relation + ",")) o_sbContact.Append((exportEmp.Emg_ContactPhoneNumber + ",")) o_sbContact.Append((exportEmp.Emg_ContactMobileNumber + ",")) 'o_sbContact.Append((exportEmp.Cast.ToString() + ",")) o_sbContact.Append((exportEmp.PhysicallyDisabled + ",")) o_sbContact.Append((exportEmp.BloodGroup + ",")) o_sbContact.Append((exportEmp.ManagerName + ",")) o_sbContact.Append((exportEmp.CurrentPosition + ",")) o_sbContact.Append((exportEmp.PanNumber + ",")) o_sbContact.Append((exportEmp.PassPortNumber + ",")) o_sbContact.Append((exportEmp.HireDate + ",")) o_sbContact.Append((exportEmp.TerminationDate + ",")) o_swCsvFile.WriteLine(o_sbContact.ToString()) o_sbContact.Remove(0, o_sbContact.Length) Next o_swCsvFile.Close() Return ml_filePath End Function
///function to export the contacts Public Shared Function ExportAllContacts(ByVal destinationFilepath As String) As String 'intiallizing file streams to read and write data Dim ml_filePath As String = (destinationFilepath + "vCard.vcf") Dim ml_tempfilePath As String = (destinationFilepath + "tempvCard.vcf") Dim fs As FileStream = New FileStream(ml_filePath, FileMode.Append) Dim fsTemp As FileStream = New FileStream(ml_tempfilePath, FileMode.Create) fsTemp.Close() 'inalizing controller and data object Dim emplist As New ArrayList Dim ExportList As New List(Of Modules.Employee.EmployeeInfo) ExportList = Modules.Employee.EmployeeController.GetAllEmployeeForExport()
For Each exportEmp As EmployeeInfo In ExportList Dim EmployeevCard As New vCard EmployeevCard.Organization = "" EmployeevCard.GivenName = exportEmp.Name.ToString() EmployeevCard.FamilyName = exportEmp.LastName.ToString() EmployeevCard.Role = exportEmp.CurrentPosition.ToString() EmployeevCard.EmailAddresses.Add(New vCardEmailAddress(exportEmp.Email)) EmployeevCard.Phones.Add(New vCardPhone(exportEmp.MobileNumber)) EmployeevCard.BirthDate = exportEmp.DateOfBirth Dim EmployeeAddressvCard As vCardDeliveryAddress = New vCardDeliveryAddress EmployeeAddressvCard.AddressType = vCardDeliveryAddressType.Home EmployeeAddressvCard.City = exportEmp.PermanentAddress EmployeevCard.DeliveryAddresses.Add(EmployeeAddressvCard)
Dim writer As vCardStandardWriter = New vCardStandardWriter writer.EmbedInternetImages = False writer.EmbedLocalImages = True writer.Options = vCardStandardWriterOptions.IgnoreCommas writer.Write(EmployeevCard, ml_tempfilePath) Dim reader As StreamReader = New StreamReader(ml_tempfilePath) Dim wr As StreamWriter = New StreamWriter(fs) Dim str As String = reader.ReadToEnd wr.WriteLine(str) reader.Close() wr.Flush() wr.Close() fs = New FileStream(ml_filePath, FileMode.Append) Next fs.Close() Return ml_filePath ' returning path of file End Function
///Click event of a link bttton to export the contacts
Protected Sub multipersonVCard_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles multipersonVCard.Click Try Dim ml_directoryPath As String = Server.MapPath("~/DesktopModules/Employee/ExportEmployee/") If Directory.Exists(ml_directoryPath) Then Directory.Delete(ml_directoryPath, True) End If Directory.CreateDirectory(ml_directoryPath) 'for vcard download Dim ml_filePath As String = ExportAllContacts(ml_directoryPath) Response.Clear() 'for card download Response.ContentType = "text/x-vcard" Response.AppendHeader("content-disposition", "attachment;filename=Employees.vcf") Response.TransmitFile(ml_filePath) Response.End() Response.Flush() Catch ex As Exception Finally End Try End Sub
dd an onfocus attribute to your input tags which calls the showCalendarControl function. Below is an example:
onfocus="showCalendarControl(this);" type="text">
function positionInfo(object) {
var p_elm = object;
this.getElementLeft = getElementLeft; function getElementLeft() { var x = 0; var elm; if(typeof(p_elm) == "object"){ elm = p_elm; } else { elm = document.getElementById(p_elm); } while (elm != null) { x+= elm.offsetLeft; elm = elm.offsetParent; } return parseInt(x); }
this.getElementWidth = getElementWidth; function getElementWidth(){ var elm; if(typeof(p_elm) == "object"){ elm = p_elm; } else { elm = document.getElementById(p_elm); } return parseInt(elm.offsetWidth); }
this.getElementRight = getElementRight; function getElementRight(){ return getElementLeft(p_elm) + getElementWidth(p_elm); }
this.getElementTop = getElementTop; function getElementTop() { var y = 0; var elm; if(typeof(p_elm) == "object"){ elm = p_elm; } else { elm = document.getElementById(p_elm); } while (elm != null) { y+= elm.offsetTop; elm = elm.offsetParent; } return parseInt(y); }
this.getElementHeight = getElementHeight; function getElementHeight(){ var elm; if(typeof(p_elm) == "object"){ elm = p_elm; } else { elm = document.getElementById(p_elm); } return parseInt(elm.offsetHeight); }
function getCurrentYear() { var year = new Date().getYear(); if(year < 1900) year += 1900; return year; }
function getCurrentMonth() { return new Date().getMonth() + 1; }
function getCurrentDay() { return new Date().getDate(); }
function calendarDrawTable() {
var dayOfMonth = 1; var validDay = 0; var startDayOfWeek = getDayOfWeek(currentYear, currentMonth, dayOfMonth); var daysInMonth = getDaysInMonth(currentYear, currentMonth); var css_class = null; //CSS class for each day